
function Test(a,b){
    if(arguments.length===0){
       alert('就拿这个考研干部')
       console.log("请传入至少一个参数，不然怎么给你办事？？？？？？");

    }
    else if(arguments.length>0){
        console.log('还行你传入了 '+a+b)
    }
}

Test('帅哥','美铝');

//Javascript允许接受任意个参数
//argumnets 只在函数内部起作用 ，永远指向当前函数的调用者传入的参数，argumnets类似数组但不是一个数组 
//argumnets 最常用于判断传入参数的个数



function RestTest(a,b,...rest){
        console.log(a)
        console.log(b);
        console.log(rest);
}

RestTest('这是2','这是1',11,22,33,44,'我们是额外的Rest')
//Rest 参数 rest参数只能写在最后，前面用...标识，从运行结果可知，传入的参数先绑定a、b，多余的参数以数组形式交给变量rest，所以，不再需要arguments我们就获取了全部参数。
//如果传入的参数连正常定义的参数都没填满，也不要紧，rest参数会接收一个空数组（注意不是undefined）


function area_of_circle(r,pi){
    pi =3.14;
    return r*r*pi
}

if(area_of_circle(2)===12.56 && area_of_circle(2,3.1416)===12.5664){
    console.log('测试通过');
}else{
    console.log('测试失败');
}

